    :root{
      --brand:#1f6feb;               /* accessible blue accent */
      --brand-600:#1a5fd0;
      --ink:#0f172a;                 /* slate-900 */
      --muted:#475569;               /* slate-600 */
      --bg:#ffffff;                  /* light surface */
      --bg-subtle:#f1f5f9;           /* slate-100 */
      --ring:#111827;                /* focus outline */
    }

    *,*::before,*::after{box-sizing:border-box}
    html:focus-within{scroll-behavior:smooth}
    body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,"Noto Sans","Helvetica Neue",Arial,"Apple Color Emoji","Segoe UI Emoji";color:var(--ink);background:var(--bg);line-height:1.6}
    img{max-width:100%;display:block;height:auto}
    a{color:var(--brand)}
    a:focus,button:focus,[href]:focus{outline:3px solid var(--ring);outline-offset:3px}
    .container{width:min(1200px,92vw);margin-inline:auto}
    .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

    /* Reserve space for mobile sticky bar */
    @media (max-width:900px){ body{padding-bottom:76px} }

    /* Skip link */
    .skip-link{position:absolute;left:0;top:-50px;background:#fff;color:#000;padding:.75rem 1rem;border-radius:.5rem;box-shadow:0 2px 8px rgba(0,0,0,.1);z-index:1000}
    .skip-link:focus{top:.75rem}

    /* Header */
    header{position:sticky;top:0;background:rgba(255,255,255,.85);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid #e5e7eb;z-index:60}
    .nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0}
    .brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit}
    .brand-logo{inline-size:44px;block-size:44px;border-radius:10px;background:var(--bg-subtle);display:grid;place-items:center;font-weight:700}
    .brand h1{font-size:1.05rem;line-height:1.1;margin:0}

    /* Desktop nav + mega menu */
    nav{position:relative}
    .menu{display:flex;gap:1rem;list-style:none;padding:0;margin:0}
    .menu > li{position:relative}
    .menu a{padding:.5rem .75rem;border-radius:.5rem;text-decoration:none;color:var(--ink)}
    .menu a:hover{background:var(--bg-subtle)}
    .mega{
      position:absolute;
      left:50%;
      top:calc(100% + .5rem);
      transform:translateX(-50%);
      background:#fff;
      border:1px solid #e5e7eb;
      border-radius:1rem;
      box-shadow:0 16px 40px rgba(0,0,0,.08);
      padding:1rem;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:1rem;
      min-width:520px;
      width:clamp(520px,72vw,920px);
      max-width:96vw;          /* keeps it inside viewport */
      overflow:hidden;
    }
    .mega h4{margin:.25rem 0}
    .mega p{margin:.15rem 0 .5rem;color:var(--muted)}
    .mega a{display:inline-flex}
    .has-mega:focus-within .mega, .has-mega:hover .mega{display:grid}
    .mega[hidden]{display:none}

    /* Mobile nav */
    .menu-toggle{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;background:#fff;border-radius:.6rem;padding:.5rem .65rem;cursor:pointer}
    .menu-toggle svg{width:22px;height:22px}
    .menu-panel{position:absolute;right:0;top:calc(100% + .5rem);background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;box-shadow:0 10px 30px rgba(0,0,0,.08);padding:.5rem;min-width:240px}
    .menu-panel ul{list-style:none;margin:0;padding:.25rem}
    .menu-panel a{display:block;padding:.65rem .75rem;border-radius:.5rem;color:var(--ink);text-decoration:none}
    .menu-panel a:hover{background:var(--bg-subtle)}

    /* Hide/show across breakpoints */
    .hide-desktop{display:none}
    .hide-mobile{display:block}
    @media (max-width: 900px){
      .hide-desktop{display:block}
      .hide-mobile{display:none}
    }

    /* Mobile layout for Services submenu inside the drawer */
    @media (max-width: 900px){
      .mobile-mega{display:block;margin-top:.5rem;border-top:1px solid #e5e7eb;padding-top:.5rem}
      .mobile-mega h4{margin:.25rem 0 .5rem}
      .mobile-mega-grid{display:grid;grid-template-columns:1fr;gap:.75rem}
      .mobile-mega .btn{width:100%}
    }

    /* Hero */
    .hero{position:relative;isolation:isolate}
    .hero-media{position:absolute;inset:0;z-index:-1;overflow:hidden;border-bottom:1px solid #e5e7eb}
    .hero-media video{min-width:100%;min-height:100%;width:100%;height:100%;object-fit:cover;filter:brightness(.85)}
    .hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom, rgba(255,255,255,.45), rgba(255,255,255,.9))}
    .hero-inner{padding:clamp(4rem, 8vw, 7rem) 0}
    .hero h2{font-size:clamp(1.8rem,3.6vw,3rem);margin:0 0 .5rem}
    .hero p{max-width:60ch;color:var(--muted);margin:0 0 1rem}
    .cta-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}
    .btn{appearance:none;border:0;border-radius:.7rem;padding:.85rem 1.1rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}
    .btn.primary{background:var(--brand);color:#fff}
    .btn.primary:hover{background:var(--brand-600)}
    .btn.ghost{background:#fff;color:var(--ink);border:1px solid #e5e7eb}

    /* Two-funnel cards */
    .funnels{padding:3rem 0;background:var(--bg)}
    .grid{display:grid;grid-template-columns:1fr;gap:1.25rem}
    @media (min-width:900px){.grid{grid-template-columns:1fr 1fr}}
    .card{background:#fff;border:1px solid #e5e7eb;border-radius:1.25rem;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto}
    .card-media{aspect-ratio:16/9;background:var(--bg-subtle);display:grid;place-items:center;color:var(--muted);font-weight:600}
    .card-body{padding:1.25rem}
    .card h3{margin:0 0 .25rem}
    .pill{display:inline-block;padding:.25rem .6rem;border-radius:999px;background:var(--bg-subtle);font-size:.8rem;color:#0b3b87}
    .list{margin:.75rem 0 0;padding-left:1rem}
    .list li{margin:.35rem 0}
    .card-actions{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem;border-top:1px solid #e5e7eb}

    /* Family owned section */
    .family{padding:3.25rem 0;background:var(--bg-subtle);border-block:1px solid #e5e7eb}
    .family .wrap{display:grid;gap:1.25rem;align-items:center}
    @media (min-width:900px){.family .wrap{grid-template-columns:240px 1fr}}
    .family-figure{aspect-ratio:4/3;border-radius:1rem;background:#e2e8f0;display:grid;place-items:center}

    /* Highlight services */
    .services{padding:3rem 0}
    .tiles{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
    .tile{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1rem}
    .tile h4{margin:.25rem 0}

    /* Sliders */
    .section{padding:3rem 0}
    .slider-shell{position:relative}
    .slider-track{display:flex;gap:1rem;overflow:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;padding-bottom:.25rem}
    .slider-track::-webkit-scrollbar{height:8px}
    .slider-track::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px}
    .slide{flex:0 0 auto;scroll-snap-align:center}

    .clients .slide{width:160px;display:grid;place-items:center;border:1px solid #e5e7eb;background:#fff;border-radius:1rem;padding:1rem}
    .clients img{max-height:44px;object-fit:contain}

    .testimonials .slide{width:min(780px,86vw);background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1.25rem}
    .quote{font-size:1rem}
    .quote small{display:block;margin-top:.5rem;color:var(--muted)}

    .slider-controls{display:flex;gap:.5rem;margin-top:.75rem}
    .slider-controls button{border:1px solid #e5e7eb;background:#fff;border-radius:.6rem;padding:.5rem .65rem;cursor:pointer}

    /* Team */
    .team-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
    .person{border:1px solid #e5e7eb;background:#fff;border-radius:1rem;overflow:hidden}
    .person img{aspect-ratio:4/3;object-fit:cover;background:#e2e8f0}
    .person .bio{padding:1rem}
    .person h4{margin:.25rem 0}
    .person p{margin:.25rem 0;color:var(--muted)}

    /* CTA band */
    .cta-band{padding:2rem 0;background:#fff;border-top:1px solid #e5e7eb}
    .cta-card{background:var(--bg-subtle);border:1px solid #e5e7eb;border-radius:1rem;padding:1.25rem;display:grid;gap:.5rem}

    /* Footer */
    footer{padding:2rem 0;background:#fff;border-top:1px solid #e5e7eb}
    .foot-grid{display:grid;gap:1.25rem;grid-template-columns:1fr;align-items:start}
    @media (min-width:900px){.foot-grid{grid-template-columns:2fr 1fr 1fr}}
    small, .muted{color:var(--muted)}

    /* Sticky mobile Apply bar */
    .apply-bar{position:fixed;left:0;right:0;bottom:0;z-index:70;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -6px 20px rgba(0,0,0,.06);padding:.6rem env(safe-area-inset-right) .8rem env(safe-area-inset-left)}
    .apply-wrap{width:min(900px,95vw);margin-inline:auto;display:flex;gap:.5rem}
    .apply-wrap .btn{flex:1;justify-content:center}
    @media (min-width:901px){.apply-bar{display:none}}

    /* Motion */
    @media (prefers-reduced-motion: reduce){
      *{scroll-behavior:auto}
      .hero-media video{animation:none;transition:none}
    }

    /* Footer (responsive + social icons) */
    footer.site-footer{padding:2rem 0;background:#fff;border-top:1px solid #e5e7eb}
    .foot-grid{display:grid;gap:1.25rem;grid-template-columns:1fr;align-items:start}
    @media (min-width:900px){.foot-grid{grid-template-columns:2fr 1fr 1fr}}
    .foot-links{list-style:none;padding:0;margin:0;display:grid;gap:.35rem}
    .social-links{display:flex;gap:.65rem;align-items:center;margin-top:.35rem}
    .social-links a{display:inline-flex;inline-size:36px;block-size:36px;border:1px solid #e5e7eb;border-radius:999px;justify-content:center;align-items:center;background:#fff}
    .social-links a:hover{background:var(--bg-subtle)}
    .social-links svg{width:18px;height:18px;fill:#64748b}

    /* Client spotlight carousel */
    .client-slider {
      overflow: hidden;
      border-radius: 12px;
      background: #fff;
      border: 1px solid #eef2f7;
      box-shadow: 0 10px 25px rgba(0,0,0,.06);
      position: relative;
    }
    .client-track {
      display: flex;
      gap: 2rem;
      animation: scrollClients 40s linear infinite;
      width: max-content;
      align-items: center;
      padding: 1.25rem 0;
    }
    .client-logo {
      flex: 0 0 auto;
      display: grid;
      place-items: center;
      width: 130px;
      height: 65px;
      background: #f9fbfe;
      border: 1px solid #e0e6ee;
      border-radius: 12px;
      padding: .75rem;
      transition: transform .3s ease;
    }
    .client-logo:hover { transform: scale(1.05); }
    .client-logo img { max-height: 45px; width: auto; object-fit: contain; }
    @keyframes scrollClients { from { transform: translateX(0); } to { transform: translateX(-50%); } }
    .client-slider:hover .client-track,
    .client-slider:focus-within .client-track { animation-play-state: paused; }
    @media (max-width: 768px) {
      .client-logo { width: 100px; height: 50px; padding: .5rem; }
      .client-track { gap: 1rem; animation-duration: 50s; }
    }

    /* Funnel Section Video Styling */
    .card-media {
      position: relative;
      aspect-ratio: 16/9;
      overflow: hidden;
      border-radius: 12px 12px 0 0;
    }
    .card-video {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    .card-media::after {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(0,0,0,0.1); /* subtle overlay */
      pointer-events: none;
    }
    @media (prefers-reduced-motion: reduce) {
      .card-video { animation: none; }
    }